home *** CD-ROM | disk | FTP | other *** search
/ BBS Toolkit / BBS Toolkit.iso / rbbs_pc / rfix0312.zip / R-PC0312.MRG < prev    next >
Text File  |  1993-03-12  |  14KB  |  350 lines

  1. * ------------[ BLED merge (c) Ken Goosens ]-------------
  2. * Merge this against C:\174\RBBS-PC.BAS to produce D:\SOURCE\RBBS-PC.BAS
  3. * C:\174\RBBS-PC.BAS:  Date 6-20-1992  Size 147219 bytes
  4. * ------------[ Created 03-12-1993 21:22:52 ]------------
  5. * REPLACING old line(s) by new
  6. 800 IF ZAdjustedSecurity THEN _
  7.        GOSUB 5135
  8.     IF ZOrigCnfg$ = ZCurDef$ THEN _
  9.        ZMainUserFileIndex = ZUserFileIndex : _
  10.        ZOrigSec = ZUserSecLevel : _
  11.        ZUserSecSave = ZUserSecLevel : _
  12.        ZOrigUserName$ = ZActiveUserName$
  13.     ZTimesLoggedOn = CVI(MID$(ZUserOption$,1,2)) - _
  14.        ((ZOrigCnfg$ <> ZCurDef$ OR NOT ZSubBoard) AND _
  15.         (NOT ZPrivateDoor) AND (NOT ZExitToDoors))
  16.     GOSUB 9500
  17.     IF (NOT ZExitToDoors) AND (NOT ZSubBoard) THEN _
  18.        CALL UpdtCalr (ZActiveUserName$ + " from " + ZWasCI$ + _
  19. * ------[ first line different ]------
  20.                  " Lvl" + STR$(ZUserSecLevel) + " " + TIME$,2) : _   ' KG092201
  21.        CALL UpdtCalr ("Line Speed " + ZCBaud$,2)                     ' KG092201
  22.     PrevLastOn$ = ZLastDateTimeOn$
  23.     IF ZLocalUser THEN _
  24.        ZTalkToModemAt$ = "9600" : _
  25.        ZBaudParity$ = "9600 BPS,N,8,1" : _
  26.        ZModemInitBaud$ = "9600" : _
  27.        ZSnoop = ZTrue : _
  28.        ZLineFeeds = ZTrue
  29.     CALL SetCrLf
  30.     CALL SetPrompt
  31.     CALL XferType (2,ZTrue)
  32.     IF NOT ZSubBoard THEN _
  33.        BoardCheckDate$ = PrevLastOn$
  34.     CALL SetSysOp
  35.     IF ZWasA THEN _
  36.        ZActiveUserName$ = "SYSOP" : _
  37.        ZFirstName$ = "SysOp"
  38.     IF ZExitToDoors OR ZSubBoard THEN _
  39.        GOTO 815
  40.     GOSUB 465
  41.     IF (ZEightBit AND _
  42.        ZAutoDownDesired) OR _
  43.        ZAskID THEN _
  44.        CALL TestUser
  45.     CALL QuickTPut1 ("Logging " + ZActiveUserName$)
  46.     CALL Talk (1,ZOutTxt$)
  47.     Temp$ = STR$(ZBaudTest!) + MID$(ZBaudParity$,INSTR(ZBaudParity$," B"))
  48.     CALL QuickTPut1 ("RBBS-PC " + ZVersionID$ + " Node " + ZNodeID$) ' KG092201
  49.     CALL QuickTPut1 ("Line speed " + ZCBaud$  + "  Host operating at" + Temp$) ' KG092201
  50.     CALL SkipLine (1)
  51.     Attempts = 0
  52.     ZWasZ$ = ZActiveUserName$ + _
  53.             " on at " + _
  54.             ZCurDate$ + _
  55.             ", " + _
  56.             ZTime$ + _
  57.             " from " + _
  58.             ZWasCI$ + _
  59.             "," + Temp$
  60.      ZWasNG$ = ZWasZ$ + SPACE$(128 - LEN(ZWasZ$))
  61. '
  62. ' *  ALWAYS RECORD THE HASH/INDIVIDUATING FIELD TO EACH RECORD LOGGED OUT
  63. '
  64.      WasX$ = "{" + _
  65.           HashValue$ + _
  66.           "/" + _
  67.           ZIndivValue$ + _
  68.           "}"
  69.      IF LEN(ZWasZ$) < 65 THEN _
  70.         WasX = 65 _
  71.      ELSE WasX = LEN(ZWasZ$) + 2
  72.      MID$(ZWasNG$,WasX) = WasX$
  73.      CALL Printit ("  " + ZWasZ$)
  74.      IF ZNewUser THEN _
  75.         CALL UpdtCalr ("NEWUSER",1) : _
  76.         CALL Muzak (2)
  77. '
  78. ' *****  NOTIFY CALLER IF ABLE TO "AUTODOWN"  ****
  79. '
  80.     IF ZEightBit AND ZAutoDownYes THEN _
  81.        ZOutTxt$ = CHR$(9) + _
  82.             ZReturnLineFeed$ + _
  83.             "You may use AUTODOWNLOADing!" : _
  84.        CALL RingCaller : _
  85.        CALL DelayTime(4)
  86. * REPLACING old line(s) by new
  87. 819 CALL Trim (ZWasCI$)
  88.     IF (ZNodeRecIndex < 2) THEN _
  89.        GOTO 821
  90.     GOSUB 4910
  91.     GOSUB 24000
  92.     GET 1,ZNodeRecIndex
  93.     MID$(ZMsgRec$,1,31) = ZActiveUserName$ + _
  94.                                  SPACE$(31 - LEN(ZActiveUserName$))
  95.     MID$(ZMsgRec$,40,2) = " 0"
  96.     MID$(ZMsgRec$,44,2) = RIGHT$(STR$(-ZBPS),2)
  97.     MID$(ZMsgRec$,55,2) = " 0"
  98.     MID$(ZMsgRec$,57,1) = "A"
  99.     MID$(ZMsgRec$,60,5) = ZTalkToModemAt$ + _
  100.                                  SPACE$(5 - LEN(ZTalkToModemAt$))
  101.     MID$(ZMsgRec$,72,2) = " 0"
  102. * ------[ first line different ]------
  103.     MID$(ZMsgRec$,79,5) = ZCBaud$ + SPACE$(5 - LEN(ZCBaud$))         ' KG012001
  104.     MID$(ZMsgRec$,93,24) = ZWasCI$ + _
  105.                                   SPACE$(24)
  106.     PUT 1,ZNodeRecIndex
  107.     GOSUB 12985
  108. * REPLACING old line(s) by new
  109. * ------[ first line different ]------
  110. 1895 IF TurboLogon OR ZNonStop THEN _                                ' KG012301
  111.         RETURN
  112.      ZOutTxt$ = "Check mail in " + ZConfName$ + " ([Y],N)"
  113.      GOSUB 12930                                                     ' KG012301
  114.      IF ZNo THEN _
  115.         SkipMain = ZTrue : _
  116.         RETURN
  117.      ZUserIn$(0) = LEFT$("NEW ",-4*LogonMailNew)
  118. * REPLACING old line(s) by new
  119. 2010 IF NOT QuotedReply THEN _
  120. * ------[ first line different ]------
  121.         ZLinesInMsg = 0 : _                                          ' KG011201
  122.         WasL = 0 : _
  123.         WasX = 0 : _
  124.         REDIM ZOutTxt$(ZMsgDim)
  125.      IF ZGetExtDesc THEN _
  126.         GOTO 2100
  127.      GOSUB 1893
  128.      RcvrRecNum = 0
  129. * REPLACING old line(s) by new
  130. * ------[ first line different ]------
  131. 2020 CALL SetWhoTo (-ZEnableCC*(ZUserSecLevel>=ZOptSec(5)),MsgTo$,MsgFrom$,RcvrRecNum,Found,INSTR(ZMsgSecCats$,"U")>0) ' KG012502
  132.      IF MsgTo$ = "" THEN _
  133.         RETURN
  134.      IF ZSysopComment OR ZSysopMsg THEN _
  135.         GOTO 2100
  136.      IF ZReply OR MsgFwd THEN _
  137.         Found = ZTrue : _
  138.         CALL Trim (MsgTo$):  _
  139.         GOTO 2035 _
  140.      ELSE Subject$ = ""
  141.      GOSUB 2065
  142. * REPLACING old line(s) by new
  143. 2500 ZOutTxt$ = "Delete from"
  144.      GOSUB 3300
  145.      Mark1 = ZTestedIntValue
  146. * ------[ first line different ]------
  147.      IF ZAnsIndex < ZLastIndex AND ZUserIn$(ZAnsIndex+1) = "-" THEN _ ' KG031101
  148.            ZAnsIndex = ZAnsIndex + 1 _                               ' KG031101
  149.      ELSE Temp = INSTR(ZUserIn$(ZAnsIndex),"-") : _                  ' KG031101
  150.              IF Temp > 0 AND Temp < LEN(ZUserIn$(ZAnsIndex)) THEN _  ' KG031101
  151.                 ZUserIn$(ZAnsIndex) = MID$(ZUserIn$(ZAnsIndex),Temp+1) : _ ' KG031101
  152.                 ZAnsIndex = ZAnsIndex - 1                            ' KG031101
  153. * REPLACING old line(s) by new
  154. 4352 SearchString$ = ""
  155.      DontPrint = ZFalse
  156.      JustReplied = ZFalse
  157.      QuotedReply = ZFalse
  158.      CanKill = (ZSysop OR ZUserSecLevel >= ZSecKillAny)
  159.      GOSUB 1893
  160.      GOSUB 5344
  161.      ZWasZ$ = ""
  162. * ------[ first line different ]------
  163.      FOR WasI = 2 TO ZLastIndex                                      ' KG012802
  164.         IF INSTR("Ss*",ZUserIn$(WasI)) > 0 THEN _
  165.            ZUserIn$(WasI) = MID$(STR$(ZLastMsgRead+1),2) + "+"
  166.         IF INSTR("Ll",ZUserIn$(WasI)) > 0 THEN _
  167.            ZUserIn$(WasI) = MID$(STR$(HighMsgNumber),2) + "-"
  168.         IF INSTR("Gg",ZUserIn$(WasI)) > 0 THEN _
  169.            GOSUB 4640                                                ' KG013001
  170.      NEXT
  171. * REPLACING old line(s) by new
  172. 4380 WasA1$ = "Msg #" + _
  173.            STR$(LowMsgNumber) + _
  174.            "-" + _
  175.            MID$(STR$(ZMsgPtr(ActiveMessages,2)),2) + _
  176.            " (H)lp,S)ince,L)ast" + _
  177.            LEFT$(",G)lobal",8*(ZLinkedConf$ ="" OR ZGlobalRead)+8)
  178. * ------[ first line different ]------
  179.      CALL SkipLine (-QuickScanMsgs)                                  ' KG062301
  180.      IF ZGlobalRead THEN _
  181.         CALL QuickTPut1 ("Reading globally")
  182.      IF AddressedToUser OR ToRequested OR FromRequested THEN _
  183.         ZWasY$ = LEFT$("TO",-2*(ToRequested OR AddressedToUser)) + _
  184.              LEFT$("/",-AddressedToUser) + _
  185.              LEFT$("FROM",-4*(FromRequested OR AddressedToUser)) : _
  186.         CALL QuickTPut1 ("Include only msgs "+ZWasY$+" you.  Read what msgs (? for help)") _
  187.      ELSE WasA1$ = WasA1$ + ",T)o,F)rom,M)" : _
  188.           IF ReadMsgs AND ZMarkedMsgs$ <> "" THEN _
  189.              WasA1$ = WasA1$ + "arked" _
  190.           ELSE WasA1$ = WasA1$ + "ine"
  191.      IF SearchString$ = "" THEN _
  192.         WasA1$ = WasA1$ + _
  193.              ", text" _
  194.      ELSE CALL QuickTPut1 ("Include only msgs with text " + SearchString$ + ".  Read what msgs (? for help)")
  195. * REPLACING old line(s) by new
  196. 4415 Forward = ZFalse
  197.      Reverse = ZFalse
  198.      FOR WasI = ZAnsIndex to ZLastIndex
  199. * ------[ first line different ]------
  200.         IF INSTR("Gg",ZUserIn$(WasI)) > 0 THEN _
  201.            GOSUB 4640                                                ' KG020201
  202.      NEXT
  203.      IF ZAnsIndex <= ZLastIndex OR LEN(ZUserIn$(ZAnsIndex)) = 1 THEN _ ' DR020301
  204.         IF INSTR("Ss*",ZUserIn$(ZAnsIndex)) > 0 THEN _
  205.            CurMsg = ZLastMsgRead + 1 : _
  206.            Forward = ZTrue : _
  207.            GOTO 4430 _
  208.         ELSE IF INSTR("Ll",ZUserIn$(ZAnsIndex)) > 0 THEN _
  209.                 CurMsg = HighMsgNumber : _
  210.                 Reverse = ZTrue : _
  211.                 GOTO 4490 _
  212.         ELSE IF INSTR("Gg",ZUserIn$(ZAnsIndex)) > 0 THEN _
  213.                 ZGlobalRead = ZTrue : _
  214.                 GOTO 4370
  215. * REPLACING old line(s) by new
  216. 4418 ZWasA = INSTR("FfTt",ZUserIn$(ZAnsIndex))
  217.      IF ZWasA > 0 THEN _
  218.         ToRequested = (ZWasA > 2) : _
  219.         FromRequested = (ZWasA < 3) : _
  220.         GOTO 4370
  221.      IF CurMsg = 0 THEN _
  222.         IF SearchHeader$ <> "" THEN _
  223.            GOTO 4370 _
  224.         ELSE SearchString$ = ZUserIn$(ZAnsIndex) : _
  225.              SearchCt = 0 : _
  226.              CALL AllCaps (SearchString$) : _
  227.              CALL Remove (SearchString$,CHR$(34) + CHR$(39)) : _
  228.              SearchHeader$ = SearchString$ : _
  229.              SubInHeader$ = SearchHeader$ : _
  230.              GOTO 4370
  231. * ------[ first line different ]------
  232.      CALL SkipLine (-ReadMsgs)                                       ' KG062301
  233. * REPLACING old line(s) by new
  234. 4630   CALL AskMore (",M)ark, #(s) to read",ZTrue,ZTrue,WasXX,ZFalse)
  235.        IF ZWasQ = 0 OR ZYes THEN _
  236.           GOTO 4631
  237.        IF ZNo THEN _
  238.           RETURN
  239.        IF ZSubParm = -1 THEN _
  240.           RETURN 10595
  241.        IF ZRet THEN _
  242.           RETURN
  243.        ZWasZ$ = ZUserIn$(1)
  244.        CALL AllCaps (ZWasZ$)
  245.        IF ZWasZ$ = "M" THEN _
  246.           ZLastIndex = ZWasQ : _
  247.           ZAnsIndex = 1 : _
  248.           CALL AskItems ("M",ZWasZ$,ZTrue,"msg",ZMarkedMsgs$)
  249.        IF VAL(ZWasZ$) > 0 THEN _
  250.           FOR WasI = ZWasQ TO 1 STEP -1 : _
  251.              ZUserIn$(WasI + 1) = ZUserIn$(WasI) : _
  252.           NEXT : _
  253.           ZUserIn$(1) = MID$(ZAllOpts$,INSTR(ZOrigCommands$,"R"),1) : _
  254.           ZLastIndex = ZWasQ + 1 : _
  255.           ZAnsIndex = 1 : _
  256. * ------[ first line different ]------
  257.           RETURN 1235                                                ' KG062301
  258. * REPLACING old line(s) by new
  259. * ------[ first line different ]------
  260. 4631   IF NOT Forward AND NOT Reverse THEN _                         ' KG062301
  261.           GOTO 4370                                                  ' KG062301
  262.         CALL CheckCarrier                                            ' KG062301
  263.        IF ZSubParm THEN _
  264.           RETURN 10595
  265.        IF ZRet THEN _
  266.           RETURN
  267. * INSERTING new line(s)
  268. 4640 FOR WasJ = WasI to ZLastIndex-1                                 ' KG013001
  269.         ZUserIn$(WasJ) = ZUserIn$(WasJ+1)                            ' KG013001
  270.      NEXT                                                            ' KG013001
  271.      ZGlobalRead = ZTrue                                             ' KG013001
  272.      ZLastIndex = ZLastIndex - 1                                     ' KG013001
  273.      RETURN                                                          ' KG013001
  274. * REPLACING old line(s) by new
  275. 4666 CALL Trim (MsgTo$)
  276.      ZOutTxt$ = "Change receiver's name from " + _
  277.         MsgTo$ + _
  278.         " to"
  279.      GOSUB 12995
  280.      IF ZWasQ = 0 THEN _
  281.         GOTO 4667
  282.      IF LEN(ZUserIn$) > 30 THEN _
  283.         CALL QuickTPut1 ("30 chars max") : _
  284.         GOTO 4666
  285.      CALL AllCaps (ZUserIn$)
  286.      MsgTo$ = ZUserIn$
  287.      TempMsgTo$ = ZUserIn$
  288. * ------[ first line different ]------
  289.      CALL SetWhoTo (ZFalse,MsgTo$,MsgFrom$,RcvrRecNum,Found,ZTrue)   ' KG012502
  290.      IF MsgTo$ = "" THEN MsgTo$ = TempMsgTo$
  291. * REPLACING old line(s) by new
  292. 5323 IF ZWasZ$ = "MAIN" THEN _
  293.         ZWasZ$ = "M"
  294.      WasX = (ZWasZ$ = "M")
  295.      IF ZWasZ$ = ConfNameSave$ OR (WasX AND ZConfName$ = "MAIN") THEN _
  296.         CALL QuickTPut1 ("You are already in " + ZWasZ$) : _
  297.         RETURN
  298. * ------[ first line different ]------
  299.      IF ZUserIn$(ZAnsIndex+1) = "!" AND ZAnsIndex < ZLastIndex THEN _ ' KG012801
  300.         TurboLogon = ZTrue : _                                       ' KG012801
  301.         ZAnsIndex = ZAnsIndex + 1                                    ' KG012801
  302.      ON INSTR("MNSPQ",ZWasZ$) GOTO 5350,5290,5292,5294,10550
  303.      IF NOT ZOK THEN _
  304.         GOTO 5300
  305.      CLOSE 2
  306. '
  307. ' ****  UPDATE PREVIOUS MESSAGE BASE CHECKPOINT RECORD  ***
  308. '
  309. * REPLACING old line(s) by new
  310. 9760 ' ****  [entry when want review plus chance to read] *********
  311.      GOSUB 9750
  312.      IF NumNewBullets > 0 THEN _
  313.         ZLastIndex = NumNewBullets + 1 : _
  314. * ------[ first line different ]------
  315.         ZOutTxt$ = "Read what new bulletins (A)ll,[Q]uit)" : _       ' KG012401
  316.         GOSUB 12999 : _
  317.         CALL AllCaps (ZUserIn$) : _                                  ' KG013002
  318.         IF ZWasQ > 0 AND ZUserIn$ <> "Q" THEN _                      ' KG012401
  319.            GOSUB 9761 : _                                            ' KG012401
  320.            ZAnsIndex = 0 : _
  321.            ZLastIndex = NumNewBullets : _
  322.            GOTO 9700
  323.      ZLastIndex = 0
  324.      IF ZAnsIndex < 1 THEN _
  325.         RETURN
  326.      GOTO 9701
  327. * INSERTING new line(s)
  328. 9761 IF ZUserIn$ <> "A" THEN _                                       ' KG012401
  329.         NumNewBullets = ZWasQ _                                      ' KG012401
  330.      ELSE _                                                          ' KG012401
  331.         FOR Temp = 1 TO NumNewBullets : _                            ' KG012401
  332.            ZUserIn$(Temp) = ZOutTxt$(Temp+1) : _                     ' KG012401
  333.         NEXT                                                         ' KG012401
  334.      RETURN                                                          ' KG012401
  335. '
  336. ' *  W - COMMAND FROM MAIN MENU (WHO'S ON THE OTHER NODES)
  337. '
  338. * REPLACING old line(s) by new
  339. * ------[ first line different ]------
  340. 9800 CALL WhosOn                                                     ' KG012601
  341.      GOSUB 5344
  342.      RETURN
  343. '
  344. ' *  1 - COMMAND FROM SYSOP MENU (DISPLAY COMMENTS)
  345. '
  346. * REPLACING old line(s) by new
  347. * ------[ first line different ]------
  348. 20205 ZFileSysParm = 0                                               ' RM030201
  349.       RETURN
  350.